package cn.iocoder.yudao.module.jifenyuan.convert.wallet;

import java.util.*;

import cn.iocoder.yudao.framework.common.pojo.PageResult;

import cn.iocoder.yudao.module.jifenyuan.api.wallet.dto.WalletRespDto;
import cn.iocoder.yudao.module.jifenyuan.controller.admin.wallet.vo.WalletCreateReqVO;
import cn.iocoder.yudao.module.jifenyuan.controller.admin.wallet.vo.WalletPageReqVO;
import cn.iocoder.yudao.module.jifenyuan.controller.admin.wallet.vo.WalletUpdateReqVO;
import org.mapstruct.Mapper;
import org.mapstruct.factory.Mappers;
import cn.iocoder.yudao.module.jifenyuan.controller.app.wallet.vo.*;
import cn.iocoder.yudao.module.jifenyuan.dal.dataobject.wallet.WalletDO;

/**
 * 记分员 钱包 Convert
 *
 * @author 芋道源码
 */
@Mapper
public interface WalletConvert {

    WalletConvert INSTANCE = Mappers.getMapper(WalletConvert.class);

    WalletDO convert(AppWalletCreateReqVO bean);

    WalletDO convert(AppWalletUpdateReqVO bean);

    AppWalletCreateReqVO convert(WalletCreateReqVO bean);

    AppWalletUpdateReqVO convert(WalletUpdateReqVO bean);
    AppWalletPageReqVO convert(WalletPageReqVO bean);

    AppWalletRespVO convert(WalletDO bean);

    WalletRespDto convert2(WalletDO bean);

    List<AppWalletRespVO> convertList(List<WalletDO> list);

    PageResult<AppWalletRespVO> convertPage(PageResult<WalletDO> page);

    List<AppWalletExcelVO> convertList02(List<WalletDO> list);

}
